Magnet temperature estimation device

ABSTRACT

Parameters relating to rotation of a motor (2) measured every constant time are acquired and the moving average of each constant interval of the parameters is calculated. The calculated moving averages are input to a training model trained so as to output a temperature of magnets attached to a rotor (7) of the motor (2) when the moving averages of the parameters relating to rotation of the motor (2) are input, and an estimated value of the magnet temperature output from the model is acquired. Next, the acquired estimated value of the magnet temperature is output.

FIELD

The present invention relates to a magnet temperature estimation device.

BACKGROUND

In a rotating type electric motor comprised of a rotor provided withpermanent magnets and of a stator, if the permanent magnets become highin temperature, the permanent magnets will fall in magnetic force, sothe electric motor will no longer be able to generate the scheduledoutput. Therefore, a need arises for detecting the temperature of thepermanent magnets. However, in commercially available vehicles,detecting the temperature of the permanent magnets attached to a rotoris difficult. Therefore, there is known a magnet temperature estimationdevice designed to estimate the temperature of the permanent magnetsattached to a rotor (for example, see Japanese Unexamined PatentPublication No. 2014-93867).

In this magnet temperature estimation device, roughly speaking, theamount of temperature rise per unit time of the rotor is calculated fromthe difference between the amount of heat radiated per unit time fromthe rotor to the oil calculated based on the temperature differencebetween the estimated temperature of the rotor and the temperature ofthe oil flowing around the rotor and the amount of heat radiated perunit time from the rotor to the oil calculated based on the amount oftemperature rise of the oil. The calculated amount of temperature riseper unit time of the rotor is cumulatively added to estimate thetemperature of the rotor, that is, the temperature of the magnets.

SUMMARY

However, if estimating the temperature of the magnets by cumulativelyadding the amount of temperature rise per unit time calculated in thisway, there is the problem that error will build up while cumulativelyadding the amount of temperature rise per unit time and that theestimated value of the magnet temperature will greatly diverge from theactual magnet temperature in many cases.

Therefore, according to the present invention, there is provided amagnet temperature estimation device comprising

-   -   a parameter acquiring unit for acquiring parameters relating to        rotation of a motor concerned, measured every constant time        period,    -   a calculating unit for calculating a moving average of every        constant interval of the parameters,    -   a temperature acquiring unit for inputting the moving averages        calculated by the calculating unit into a training model trained        so as to output a temperature of the magnets attached to a rotor        of the motor when the moving averages of the parameters relating        to rotation of the motor are input to acquire an estimated value        of the magnet temperature output from the training model, and    -   an output unit for outputting the estimated value of the magnet        temperature which the temperature acquiring unit acquires.

According to the present invention, it is possible to accuratelyestimate the magnet temperature.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is an overall view of a magnet temperature estimation device.

FIG. 2 is a time chart for explaining a method of estimation of a magnettemperature.

FIG. 3 is a view for explaining 1D convolutional processing.

FIG. 4A and FIG. 4B are views for explaining 1D convolutionalprocessing.

FIG. 5 is a view showing a structure of a 1D convolutional neuralnetwork.

FIG. 6 is a view for explaining 1D convolutional processing.

FIG. 7 is a view for explaining 1D convolutional processing.

FIG. 8A and FIG. 8B are views for explaining 1D convolutionalprocessing.

FIG. 9 is a time chart for explaining a method of estimation of a magnettemperature.

FIG. 10A and FIG. 10B are respectively views showing a list of theacquired parameters and a list of the moving averages.

FIG. 11A and FIG. 11B are respectively views for explaining simplemoving average processing and exponential moving average processing.

FIG. 12 is a flow chart for estimating the magnet temperature.

FIG. 13 is a view of a functional constitution of the present invention.

FIG. 14 is a view showing a relationship between an estimation error ofthe magnet temperature and frequency distribution.

FIG. 15 is a view showing a relationship between a computation timeinterval and a drive load of a vehicle.

FIG. 16 is a flow chart for estimating the magnet temperature.

FIG. 17A and FIG. 17B are respectively views showing a relationshipbetween the magnet temperature and a drive current upper limit and aflow chart for control of the drive current.

FIG. 18A and FIG. 18B are respectively views showing a relationshipbetween the magnet temperature and a drive current of an oil pump-drivemotor and a flow chart for control of the drive operation of the oilpump.

DESCRIPTION OF EMBODIMENTS

Referring to FIG. 1, 1 indicates a housing of a transaxle of a hybridvehicle, 2 indicates a motor for driving the vehicle, 3 indicates an oilpump, and 4 indicates an oil cooler. The motor 2 is comprised of a shaft6 supported to be able to rotate by bearings 5, a rotor 7 fixed to theshaft 6, and a stator 8 surrounding the rotor 7. In the embodiment ofthe present invention, permanent magnets (not shown) are attached to therotor 7. In this case, the permanent magnets are sometimes embeddedinside the rotor 7 and are sometimes fixed on the outer circumferentialsurface of the rotor 7. On the other hand, a stator coil (not shown) isarranged inside the stator 8. If the stator coil is supplied with drivecurrent, the interaction with the magnetic fields of the permanentmagnets which the rotor 7 is provided with causes the rotor 7 to turn.Note that, the motor 2 is not only used as a source of drive power ofthe vehicle, but is also used as a generator. The supply of drivecurrent to the stator coil is controlled by an inverter 9. This inverter9 is controlled by an electronic control unit 20.

Inside the housing 1 of the transaxle, oil for lubricating and coolingthe motor 2 and speed reduction gear mechanism is supplied. The oilpooling at the bottom part inside the housing 1 of the transaxle is sentby the oil pump 3 to the oil cooler 4. Oil cooled by a heat exchangeaction with the engine cooling water inside the oil cooler 4 is againsent to the inside of the housing 1 of the transaxle. The oil pump 3 issometimes driven by the engine and is sometimes driven by the oilpump-drive motor. In the embodiment shown in FIG. 1 , the oil pump 3 isdriven by the engine.

As shown in FIG. 1 , the electronic control unit 20 is comprised of adigital computer provided with a ROM (read only memory) 22, RAM (randomaccess memory) 23, CPU (microprocessor) 24, input port 25, and outputport 26, which are connected with each other by a bidirectional bus 21.At the stator 8, a temperature sensor 10 for measuring the temperatureof the stator coil is attached. The output signal of this temperaturesensor 10 is input through a corresponding AD converter 27 to the inputport 25. At the shaft 6 of the motor 2, a rotational speed sensor 11 formeasuring a rotational speed of the motor 2 is attached. The outputsignal of this rotational speed sensor 11 is input through acorresponding AD converter 27 to the input port 25.

Further, at the bottom part inside of the housing 1 of the transaxle, atemperature sensor 12 for measuring the temperature of the oil pooledinside the housing 1 of the oil transaxle is attached. The output signalof this temperature sensor 12 is input through a corresponding ADconverter 27 to the input port 25. Furthermore, at the oil pump 3, arotational speed sensor 13 for measuring the rotational speed of the oilpump 3 is attached. The output signal of this rotational speed sensor 13is input through a corresponding AD converter 27 to the input port 25.Note that, if the oil pump 3 is driven by the engine, as the rotationalspeed sensor 13, a rotational speed sensor for detecting the enginerotational speed can be used.

On the other hand, from the inverter 9, signals showing the drivecurrent of the motor 2, the drive voltage of the motor 2, and theinverter frequency are input through respectively corresponding ADconverters 27 to the input port 25. In this case, inside the electroniccontrol unit 20, the drive torque of the motor 2 is calculated from thedrive current of the motor 2 and the drive voltage of the motor 2.

Now then, if the permanent magnets become high in temperature, themagnetic force falls. Therefore, if the temperature of the permanentmagnets attached to the rotor 7 becomes high, the motor 7 can no longergenerate the scheduled output. Therefore, a need arises for detectingthe temperature of the permanent magnets. However, in commerciallyavailable vehicles, it is difficult to detect the temperature of thepermanent magnets attached to the rotor 7. Therefore, it becomesnecessary to estimate the temperature of the permanent magnets. Thus, asa result of repeatedly studying the temperature of the permanentmagnets, it has been learned that the temperature of the permanentmagnets attached to the rotor 7 is correlated with parameters relatingto rotation of the motor 7 and, further, the temperature of thepermanent magnets attached to the rotor 7 is greatly affected by thechanges along with time in these parameters from the past to thepresent.

In this case, the temperature of the permanent magnets attached to therotor 7 is particularly strongly correlated with the temperature of thestator coil, the rotational speed of the motor 2, the temperature of theoil, and the rotational speed of the oil pump 3 among the parametersrelating to the rotation of the motor, and it has been learned that thechanges along with time in these temperature of the stator coil,rotational speed of the motor 2, temperature of the oil, and rotationalspeed of the oil pump 3 from the past to the present greatly affect thetemperature of the permanent magnets attached to the rotor 7. In FIG. 2, an example of the changes along with time in the temperature Ts of thestator coil, the rotational speed Rm of the motor 2, the temperature Tiof the oil, and the rotational speed Rp of the oil pump 3 is shown.Furthermore, in FIG. 2 , the actual change along with time of thetemperature Tr of the permanent magnets attached to the rotor 7 is shownby the solid line.

Note that, in FIG. 2 , the temperature Ts of the stator coil is measuredby the temperature sensor 10, the rotational speed Rm of the motor 2 ismeasured by the rotational speed sensor 11, the temperature Ti of theoil is measured by the temperature sensor 12, and the rotational speedRp of the oil pump 3 is measured by the rotational speed sensor 13. Onthe other hand, the actual temperature Tr of the permanent magnetsattached to the rotor 7 is for example detected using a telemeter ableto wirelessly send for example temperature information detected by athermistor to the outside. In this case, the telemeter is embedded inthe rotor 7 so as to enable detection of the actual temperature Tr ofthe permanent magnets. Further, as the actual temperature Tr of thepermanent magnets attached to the rotor 7, it is also possible to usethe temperature obtained by simulation.

Now then, as explained above, it is learned that the changes along withtime of the temperature Ts of the stator coil, the rotational speed Rmof the motor 2, the temperature Ti of the oil, and the rotational speedRp of the oil pump 3 from the past to the present greatly affect thetemperature of the permanent magnets attached to the rotor 7. Therefore,in the embodiment of the present invention, a 1D convolutional neuralnetwork is used to try to estimate the current temperature Tr of thepermanent magnets attached to the rotor 7 from the changes along withtime of the temperature Ts of the stator coil, the rotational speed Rmof the motor 2, the temperature Ti of the oil, and the rotational speedRp of the oil pump 3 from the past to the present. Note that, in FIG. 2, the broken line shows the change of the estimated value of thetemperature Tr of the permanent magnets attached to the rotor 7.

Now then, in the embodiment of the present invention, the measuredvalues of the temperature Ts of the stator coil, the rotational speed Rmof the motor 2, the temperature Ti of the oil, and the rotational speedRp of the oil pump 3 are acquired every 1 second. In this case, in theembodiment of the present invention, the 1D convolutional neural networkis used to find the estimated value TTr of the current temperature Tr ofthe permanent magnets attached to the rotor 7 from the time series dataof the temperature Ts of the stator coil, the rotational speed Rm of themotor 2, the temperature Ti of the oil, and the rotational speed Rp ofthe oil pump 3 acquired every 1 second in the 10 seconds from a time t-9to a time “t”.

Therefore, next, taking as an example the case shown in FIG. 2 , anoutline of the method of estimation using the 1D convolutional neuralnetwork will be explained while referring to FIG. 3 to FIG. 5 . Theupper part of FIG. 3 shows a list of the measured values “a”, “b”, “c”,and “d” for every 1 second in the 10 seconds from the time t-9 to thetime “t”. In the case shown in FIG. 2 , these measured values “a”, “b”,“c”, and “d” show the measured values of the temperature Ts of thestator coil, the rotational speed Rm of the motor 2, the temperature Tiof the oil, and the rotational speed Rp of the oil pump 3.

On the other hand, the filter applied to these measured values “a”, “b”,“c”, and “d” is shown at the center part of FIG. 3 . This filterrespectively assigns to the measured values “a”, “b”, “c”, and “d” thefour elements wa₍₁₎₁ to wa₍₁₎₄, wb₍₁₎₁ to wb₍₁₎₄, wc₍₁₎₁ to wc₍₁₎₄, andwd₍₁₎₁ to wd₍₁₎₄. That is, this filter is made one of a filter size of 4and a number of channels of 4. In this case, first, at the time t-6(FIG. 3 ), the sum of products of the measured values “a”, “b”, “c”, and“d” of the time t-9 to the time t-6 surrounded by the broken line at theupper part of FIG. 3 and the values of the elements corresponding to thefilter are calculated. That is, the measured values “a”, “b”, “c”, and“d” of the time t-9 to the time t-6 surrounded by the broken line at theupper part of FIG. 3 are multiplied with values of correspondingelements of the filter and the sum of the 16 results of multiplicationobtained (a_(t-9)·wa₍₁₎₁+a_(t-8)·wa₍₁₎₂+ . . .+d_(t-7)·wd₍₁₎₃+d_(t-6)·wd₍₁₎₄) is calculated. The value of the thuscalculated sum of products is made the output value z_((i)t-6) at thetime t-6 surrounded by the broken line at the lower part of FIG. 3 .

Next, at the time t-5 of FIG. 3 , the sum of products of the measuredvalues “a”, “b”, “c”, and “d” of the time t-8 to the time t-5 surroundedby the dash and dot line at the upper part of FIG. 3 and the values ofthe corresponding elements of the filter (a_(t-8)·wa₍₁₎₁+a_(t-7)·wa₍₁₎₂+. . . +d_(t-6)·wd₍₁₎₃+d_(t-5)·wd₍₁₎₄) are calculated. The value of thethus calculated sum of products is made the output value z_((1)t-5) atthe time t-5 surrounded by the dash and dot line at the lower part ofFIG. 3 . That is, the measured values “a”, “b”, “c”, and “d” of the timet-9 to the time t-6 surrounded by the broken line at the upper part ofFIG. 3 are convoluted by the filter and the result is made the outputvalue z_((1)t-6), while the measured values “a”, “b”, “c”, and “d” ofthe time t-8 to the time t-5 surrounded by the dash and dot line at theupper part of FIG. 3 are convoluted by the filter and the result madethe output value z_((1)t-5).

By convoluting the measured values “a”, “b”, “c”, and “d” by the filterin this way while making the filter move a little at a time, the outputvalues (z_((1)t-6) . . . z_((1)t)) from the time t-6 to the time “t” arecalculated. On the other hand, in this example of the 1D convolutionalneural network, as shown in FIG. 4A, further 19 filters of a filtersize=4 and number of channels=4 are used. In these 19 filters, themeasured values “a”, “b”, “c”, and “d” are convoluted by the filterswhile making the filters move a little at a time whereby, as shown inFIG. 4B, 19 output values from the time t-6 to the time “t” (z_((2)t-6). . . z_((2)t)) . . . (z_((20)t-6) . . . z_((20)t)) are calculated. Thatis, in total, 20 output values from the time t-6 to the time “t”(z_((1)t-6) . . . z_((1)t)) . . . (z_((20)t-6) . . . z_((20)t)) arecalculated. These output values from the time t-6 to the time “t” areused for training the 1D convolutional neural network, and by using thetrained 1D convolutional neural network, the estimated value TTr of thecurrent temperature Tr of the permanent magnets attached to the rotor 7is found. Note that, in this case as well, the amounts of movement ofthe filters may be made any amounts of movement, that is, any strides.

FIG. 5 shows the structure of the 1D convolutional neural network. Ifthe measured values “a”, “b”, “c”, and “d” such as shown in FIG. 3 areinput to the 1D convolutional neural network, at the convolution layerof FIG. 5 , these measured values “a”, “b”, “c”, and “d” are processedby convolution by the filters and, in total, such as shown in FIG. 3 andFIG. 4B, 20 output values (z_((1)t-6) . . . z_((11t)) . . . (z_((20)t-6). . . z_((20)t)) from the time t-6 to the time “t” are calculated. Theseoutput values are multiplied with a Sigmoid function or other activationfunction and the output values multiplied with the activation functionare input to the nodes of the fully connected layer. Note that, in thiscase, it is also possible to provide a pooling layer before the fullyconnected layer. The outputs from the nodes of the fully connected layerare input to the nodes of the output layer, and the estimated value TTrof the current temperature Tr of the permanent magnets is output fromthe node of the output layer.

In this regard, if the measured values “a”, “b”, “c”, and “d” for each 1second in the 10 seconds from the time t-9 to the time “t” such as shownin the list of the upper part of FIG. 3 are processed by convolution bythe filters, since the amount of data to be stored is large, a largestorage capacity becomes necessary. Furthermore, since the amount ofweights to be trained in the 1D convolutional neural network is large,time is required for finding the estimated value TTr of the currenttemperature Tr of the permanent magnets. Therefore, in the embodiment ofthe present invention, in order to reduce the stored amount of data andreduce the amount of weights to be trained while retaining such a statethat the changes along with time of the measured values “a”, “b”, “c”,and “d” from the past to the present do not adversely affect theestimated value TTr of the current temperature Tr of the permanentmagnets, the moving averages of the measured values “a”, “b”, “c”, and“d” are found, and the moving averages of the measured values “a”, “b”,“c”, and “d” found are processed by convolution by the filters.

Therefore, next, while referring to FIG. 6 to FIG. 8B, thelDconvolutional processing using moving averages will be explained. First,referring to FIG. 6 , at the upper part of FIG. 6 , a list of themeasured values “a”, “b”, “c”, and “d” for every 1 second in the 10seconds from the time t-9 to the time “t” the same as the list shown atthe upper part of FIG. 3 is shown. In the embodiment of the presentinvention, the measured values “a”, “b”, “c”, and “d” shown at the upperpart of FIG. 6 are processed to find the moving averages. In the exampleshown in FIG. 6 , at the time t-5, for the measured values “a”, themoving average of the measured values (a_(t-9), a_(t-8), a_(t-7),a_(t-6), and a_(t-5)) in the past 5 seconds from the time t-9 to thetime t-5 surrounded by the broken line in the upper part of FIG. 6 iscalculated. This moving average of the measured values (a_(t-9),a_(t-8), a_(t-7), a_(t-6), and a_(t-5)) is made the ma_(t-5) surroundedby the broken line at the time t-5 of the list at the lower part of FIG.6 . Further, at the time t-4, for the measured values “a”, the movingaverage of the measured values (a_(t-8), a_(t-7), a_(t-6), a_(t-5), anda_(t-4)) in the past 5 seconds from the time t-8 to the time t-4surrounded by the dash and dot line in the upper part of FIG. 6 iscalculated. This moving average of the measured values (a_(t-8),a_(t-7), a_(t-6), a_(t-5), and a_(t-4)) is made the ma_(t-4) surroundedby the dash and dot line at the time t-4 of the list at the lower partof FIG. 6 .

In the same way, the moving averages ma_(t-3), ma_(t-2), ma_(t-1), andma_(t) from the time t-3 to the time “t” are calculated. Further, likewhat is shown in the list at the lower part of FIG. 6 , for the measuredvalues “b” as well, similarly the moving averages mb_(t-5), mb_(t-4),mb_(t-3), mb_(t-2), mb_(t-1), and mb_(t) from the time t-5 to the time“t” are calculated, for the measured values “c” as well, similarly themoving averages mc_(t-5), mc_(t-4), mc_(t-3), mc_(t-2), mc_(t4), andmc_(t) from the time t-5 to the time “t” are calculated, and for themeasured values “d” as well, similarly the moving averages md_(t-5),md_(t-4), md_(t-3), md_(t-2), md_(t-1), and md_(t) from the time t-5 tothe time “t” are calculated. For all of the measured values “a”, “b”,“c”, and “d” from the time t-9 to the time “t”, if the moving averagesma_(t-5), ma_(t-4) . . . , md_(t-1), and md_(t) such as shown in thelist at the lower part of FIG. 6 are calculated, these moving averagesma_(t-5), ma_(t-4) . . . , md_(t-1), and md_(t) are processed by the 1Dconvolution.

Next, this 1D convolutional processing of the moving averages ma_(t-5),ma_(t-4) . . . , md_(t-1), and md_(t) will be explained while referringto FIG. 7 to FIG. 8B. Note that, this 1D convolutional processing of themoving averages ma_(t-5), ma_(t-4) . . . , md_(t-1), and md_(t) isperformed by a method similar to the 1D convolutional processingexplained with reference to FIG. 3 to FIG. 4B. If referring to FIG. 7 ,at the upper part of FIG. 7 , a list the same as the list shown at thelower part of FIG. 6 is shown. On the other hand, at the center part ofFIG. 7 , a filter applied to the moving averages ma_(t-5), ma_(t-4) . .. md_(t-1), and md_(t) is shown. In this filter as well, in the same wayas the filter shown at the center part of FIG. 3 , the filter size is 4and the number of channels is also 4.

In this case as well, first, at the time t-2 of FIG. 7 , the sum ofproducts of the moving averages ma_(t-5), ma_(t-4) . . . md_(t-3), andmd_(t-2) from the time t-5 to the time t-2 surrounded by the broken linein the upper part of FIG. 7 and the values of the corresponding elementsof the filter is calculated. That is, the moving averages ma_(t-5),ma_(t-4) . . . md_(t-3), and md_(t-2) from the time t-5 to the time t-2surrounded by the broken line in the upper part of FIG. 7 are multipliedwith the values of the corresponding elements of the filter, and the sumof the 16 obtained results of multiplication(ma_(t-5)·wa₍₁₎₁+ma_(t-4)·wa₍₁₎₂+ . . .+md_(t-3)·wd₍₁₎₃+md_(t-2)·wd₍₁₎₄) is calculated. The value of the thuscalculated sum of products is made the output value z_((1)t-2) at thetime t-2 surrounded by the broken line at the lower part of FIG. 7 .

Next, at the time t-1 of FIG. 7 , the sum of products of the movingaverages ma_(t-4), ma_(t-3) . . . md_(t-2), and md_(t-1) from the timet-4 to the time t-1 surrounded by the dash and dot line at the upperpart of FIG. 7 and the values of the corresponding elements of thefilter (ma_(t-4)·wa₍₁₎₁+ma_(t-3)·wa₍₁₎₂+ . . .+md_(t-2)·wd₍₁₎₃+md_(t-1)·wd₍₁₎₄) is calculated. The value of the thuscalculated sum of products is made the output value z_((1)t-1) at thetime t-1 surrounded by the dash and dot line at the lower part of FIG. 7. That is, the moving averages ma_(t-5), ma_(t-4) . . . md_(t-3), andmd_(t-2) from the time t-5 to the time t-2 surrounded by the broken lineat the upper part of FIG. 7 are processed by convolution by the filterand the result is made the output value z_((1)t-2) while the movingaverages ma_(t-4), ma_(t-3) . . . md_(t-2), and md_(t-1) from the timet-4 to the time t-1 surrounded by the dash and dot line at the upperpart of FIG. 7 are processed by convolution by the filter and the resultis made the output value z_((1)t-1).

By processing the moving averages ma_(t-5), ma_(t-4) . . . md_(t-1), andmd_(t) by convolution by a filter while making the filter move a littleat a time in this way, the output value (z_((1)t-2) . . . z_((1)t)) fromthe time t-2 to the time “t” is calculated. On the other hand, in thisexample of the 1D convolutional neural network, as shown in FIG. 8A,further 19 filters of the filter size=4 and number of channels=4 areused. Regarding these 19 filters, the moving averages ma_(t-5), ma_(t-4). . . md_(t-1), and md_(t) are convoluted by the filters while makingthe filters move a little at a time whereby, as shown in FIG. 8B, 19output values from the time t-2 to the time “t” (z_((2)t-2) . . .z_((2)t)) . . . (z_((20)t-2) . . . z_((20)t)) are calculated. That is,in total, 20 output values from the time t-2 to the time “t” (z_((1)t-2). . . z_((1)t)) . . . (z_((20)t-2) . . . z_((20)t)) are calculated.These output values from the time t-2 to the time “t” are used fortraining the 1D convolutional neural network, and by using the trained1D convolutional neural network, the estimated value TTr of the currenttemperature Tr of the permanent magnets which the rotor 7 is providedwith is found. Note that, in this case as well, the amounts of movementof the filters may be made any amounts of movement, that is, anystrides.

FIG. 9 shows an example of the changes along with time of the movingaverages of the temperature Ts of the stator coil, the rotational speedRm of the motor 2, the temperature Ti of the oil, and the rotationalspeed Rp of the oil pump 3, the change along with time (solid line) ofthe actual temperature Tr of the permanent magnets which the rotor 7 isprovided with, and the change along with time (broken line) of theestimated value of the temperature Tr of the permanent magnets which therotor 7 is provided with when performing the moving average processingfor the measured values of the temperature Ts of the stator coil shownin FIG. 2 , the measured values of the rotational speed Rm of the motor2 shown in FIG. 2 , the measured values of the temperature Ti of the oilshown in FIG. 2 , and the measured values of the rotational speed Rp ofthe oil pump 3 shown in FIG. 2 , respectively.

In this regard, in the example shown in FIG. 9 , as explained above, theoutput values from the time t-2 to the time “t” are used to train the 1Dconvolutional neural network. Therefore, the training period of the 1Dconvolutional neural network becomes the range shown by S in FIG. 9 . Asopposed to this, in the example shown in FIG. 2 , as explained above,the output values from the time t-6 to the time “t” are used to trainthe 1D convolutional neural network. Therefore, the training period ofthe 1D convolutional neural network becomes the range shown by S in FIG.2 . In this case, in both the case shown in FIG. 9 and the case shown inFIG. 2 , the amounts of information used for training the 1Dconvolutional neural network are substantially the same. Therefore, ifprocessing the moving averages ma_(t-5), ma_(t-4) . . . md_(t-1), andmd_(t) by convolution, that is, in the case shown in FIG. 9 , comparedwith the case shown in FIG. 2 , it is possible to maintain the amount ofinformation used for training substantially the same while shorteningthe training period of the 1D convolutional neural network. As a result,it is possible to slash the amount of data held and possible to reducethe required storage capacity.

Next, referring to FIG. 10A and FIG. 10B, the processing for trainingthe 1D convolutional neural network will be explained. The processingfor training this 1D convolutional neural network is for exampleperformed inside the electronic control unit 20 shown in FIG. 1 . Whentraining the 1D convolutional neural network, first, the drive load ofthe vehicle is made to change in various ways. At this time, thetemperature Ts of the stator coil, the rotational speed Rm of the motor2, the temperature Ti of the oil, the rotational speed Rp of the oilpump 3, and the actual temperature Tr of the permanent magnets which therotor 7 is provided with, measured every unit time, for example, every 1second, are stored in the RAM 23 of the electronic control unit 20. FIG.10A shows the temperature Ts of the stator coil, the rotational speed Rmof the motor 2, the temperature Ti of the oil, the rotational speed Rpof the oil pump 3, and the actual temperature Tr of the permanentmagnets which the rotor 7 is provided with at the times t₁, t₂, t₃, t₄,t₅, t₆, t₇, t₈ . . . stored in the RAM 23 of the electronic control unit20. Note that, the time t₁ at FIG. 10A shows the time when thetemperature Ts of the stator coil etc. start being stored.

Inside the electronic control unit 20, the moving averages arecalculated from the measured values shown in FIG. 10A stored in the RAM23 of the electronic control unit 20. The calculated moving averages arestored in the RAM 23 of the electronic control unit 20. FIG. 10B shows alist of the moving averages stored in the RAM 23 of the electroniccontrol unit 20. Note that, below, as one example, the case of findingthe moving averages of the measured values in the past 4 seconds will beused as an example to explain the moving averages shown in the list ofFIG. 10B while referring to FIG. 11A and FIG. 11B.

FIG. 11A shows the case of using as the moving averages moving averagesobtained by simple moving averages (SMA). In this case, as shown in FIG.11A, the moving average ma₄ at the time t₄ of FIG. 10B is the simpleaverage of the measured values a₁, a₂, a₃, and a₄ from the time t₁ tothe time t₄ of FIG. 10A, while the moving average mb₄ at the time t₄ ofFIG. 10B is the simple average of the measured values b₁, b₂, b₃, and b₄from the time t₁ to the time t₄ of FIG. 10A. The same is true for theremaining moving averages mc₄ and md₄ at the time t₄ of FIG. 10B.

Further, as shown in FIG. 11A, the moving average ma₅ at the time t₅ ofFIG. 10B is the simple moving average of the measured values a₂, a₃, a₄,and a₅ of the time t₂ to the time t₅ of FIG. 10A, while the movingaverage mb₅ at the time t₅ of FIG. 10B is the simple moving average ofthe measured values b₂, b₃, b₄, and ba₅ of the time t₂ to the time t₅ ofFIG. 10A. The same is true for the remaining moving averages mc₅ and md₅at the time t₅ of FIG. 10B. Note that, in FIG. 11A, the general formulaof this simple moving average (SMA) is shown.

On the other hand, FIG. 11B shows the case of using as the movingaverages moving averages obtained by exponential moving averages (EMA).An exponential moving average (EMA) uses the previous exponential movingaverages (EMA) instead of the past measured values and doubles thecurrent measured values for giving weight to the current measured valuesto find the average of these. When the previous exponential movingaverages (EMA) have not been calculated, the exponential moving average(EMA) is calculated using the measured values.

For example, at the times t₁, t₂, and t₃ of FIG. 10B, the exponentialmoving average (EMA) is not calculated. Therefore, at the time t₄ ofFIG. 10B, the measured values are used to calculate the exponentialmoving average (EMA). That is, as shown in FIG. 11B, the exponentialmoving average ma₄ at the time t₄ of FIG. 10B is made a value obtainedby dividing the value of the sum of the measured values a₁, a₂, and a₃from the time t₁ to the time t₃ of FIG. 10A and double the measuredvalue a₄ at the time t₄ by the number of terms of the numerator (=5),while the exponential moving average mb₄ at the time t₄ of FIG. 10B ismade a value obtained by dividing the value of the sum of the measuredvalues b₁, b₂, and b₃ from the time t₁ to the time t₃ of FIG. 10A anddouble the measured value b₄ at the time t₄ by the number of terms ofthe numerator (=5). The same is true for the remaining exponentialmoving averages mc₄ and md₄ at the time t₄ of FIG. 10B.

On the other hand, as shown in FIG. 11B, for calculation of theexponential moving average ma₅ at the time t₅ of FIG. 10B, the previousexponential moving average ma₄ is used instead of the measured valuesa₂, a₃, and a₄ from the time t₂ to the time t₄ of FIG. 10A, theexponential moving average ma₅ is made a value obtained by dividing thevalue of the sum of the three previous exponential moving averages ma₄and double the measured value a₅ at the time t₅ by the number of termsof the numerator (=5), and the exponential moving average mb₅ of thetime t₅ of FIG. 10B is made a value obtained by dividing the value ofthe sum of the three previous exponential moving averages mb₄ and doublethe measured value b₅ at the time t₅ by the number of terms of thenumerator (=5). The same is true for the remaining moving averages mc₅and md₅ at the time t₅ of FIG. 10B. Note that, in FIG. 11B, the generalformula of this exponential moving average (EMA) is shown.

The weights of the 1D convolutional neural network are trained using the1D convolutional neural network shown in FIG. 5 based on the list ofmoving averages shown in FIG. 10B stored in the RAM 23 of the electroniccontrol unit 20. That is, FIG. 10B shows the training-use data sets fortraining the weights of the 1D convolutional neural network. At the timeof training the weights of the 1D convolutional neural network, first,the moving averages ma₄ . . . ma₉, mb₄ . . . mb₉, mc₄ . . . mc₉, and md₄. . . md₉ from the time t₄ to the time t₉ are input to the 1Dconvolutional neural network shown in FIG. 5 and the input movingaverages ma₄ . . . ma₉, mb₄ . . . mb₉, mc₄ . . . mc₉, and md₄ . . . md₉from the time t₄ to the time t₉ are processed by convolution by a filterwhile making the filter move a little at a time, whereby the outputvalues from the time t₇ to the time t₉ (z₍₁₎₇, z₍₁₎₈, z₍₁₎₉) . . .(z₍₂₀₎₇, z₍₂₀₎₈, and z₍₂₀₎₉) are calculated.

These output values from the time t₇ to the time t₉ are multiplied witha Sigmoid function or other activation function, and the output valuesmultiplied with the activation function are input to the nodes of thefully connected layer. The outputs from the nodes of the fully connectedlayer are input to the nodes of the output layer, and an output valueshowing the temperature of the permanent magnets is output from the nodeof the output layer. Error backpropagation is used to train the valuesof the elements of the filters and the weights of the fully connectedlayer, that is, the weights of the 1D convolutional neural network, sothat the difference between this output value and the training data,that is, the actual temperature Tr₉ of the permanent magnets at the timet₉, becomes smaller. If the 1D convolutional neural network finishesbeing trained in weights using the output values from the time t₇ to thetime t₉, next, the 1D convolutional neural network is trained in weightsusing the output values from the time t₈ to the time t₁₀. In this way,the 1D convolutional neural network is trained in weights until reachingthe final time in the list of FIG. 10B.

After the 1D convolutional neural network finishes being trained inweights, the trained 1D convolutional neural network is stored in theRAM 23 of the electronic control unit 20. This trained 1D convolutionalneural network is used for processing for estimation of the temperatureTr of the permanent magnets attached to the rotor 7.

FIG. 12 shows the routine for estimation of the magnet temperatureperformed using this trained 1D convolutional neural network whileoperating a vehicle. Note that, this routine is executed by interruptionevery 1 second.

Referring to FIG. 12 , first, at step 40, the temperature Ts of thestator coil measured by the temperature sensor 10, the rotational speedRm of the motor 2 measured by the rotational speed sensor 11, thetemperature Ti of the oil measured by the temperature sensor 12, and therotational speed Rp of the oil pump 3 measured by the rotational speedsensor 13 are acquired and are stored inside the RAM 23. Next, at step41, it is judged if a fixed time X1 from when the routine for estimationof the magnet temperature has started to be performed has elapsed, thatis, the necessary number of measured values required for calculating themoving average has been acquired. If calculating the moving averagesbased on four measured values, this fixed time X1 is made 4 seconds.

When at step 41 it is judged that the fixed time X1 from when theroutine for estimation of the magnet temperature has started to beperformed has not elapsed, the processing cycle is ended. As opposed tothis, when at step 41 it is judged that the fixed time X1 from when theroutine for estimation of the magnet temperature has started to beperformed has elapsed, the routine proceeds to step 42 where the movingaverages are calculated, then the routine proceeds to step 43 where thecalculated moving averages are stored inside the RAM 23. Note that, ifusing as the moving averages moving averages obtained as simple movingaverages (SMA), at step 42, the moving averages shown at the time t₄ ofFIG. 11A are calculated. Further, the moving averages shown at the timet₅ of FIG. 11A are calculated at the next interruption routine after 1second.

On the other hand, if using as the moving averages moving averagesobtained by exponential moving averages (EMA), at step 42, the movingaverages shown at the time t₄ of FIG. 11B are calculated. Further, themoving averages shown at the time t₅ of FIG. 11B are calculated at thenext interruption routine after 1 second, then the moving averagessimilar to the moving averages shown at the time t₅ of FIG. 11B arecalculated.

Next, at step 44, it is judged if a fixed time X2 from when the routinefor estimation of the magnet temperature has started to be performed haselapsed, that is, if it has become a time where estimation of the magnettemperature using the 1D convolutional neural network has becomepossible. When at step 44 it is judged that the fixed time X2 from whenthe routine for estimation of the magnet temperature has started has notelapsed, the processing cycle is ended. As opposed to this, when it isjudged that the fixed time X2 from when the routine for estimation ofthe magnet temperature has started to be performed has elapsed, theroutine proceeds to step 45 where the trained 1D convolutional neuralnetwork is used to perform processing for calculating the estimatedvalue of the magnet temperature. That is, the calculated moving averagesare input to the trained 1D convolutional neural network. If thecalculated moving averages are input to the trained 1D convolutionalneural network, the estimated value of the magnet temperature is outputfrom the trained 1D convolutional neural network (step 46).

Note that, in case where, at the time of training the 1D convolutionalneural network in weights, the moving averages ma₄ . . . , mb₄ . . . ,mc₄ . . . , md₄ . . . from the time t₄ on at FIG. 10B are processed byconvolution by the filter while making the filter move little by littleto thereby first calculate the output values (z₍₁₎₇, z₍₁₎₈, z₍₁₎₉) . . .(z₍₂₀₎₇, z₍₂₀₎₈, and z₍₂₀₎₉) from the time t7 to the time t₉, whenestimating the magnet temperature by using the trained 1D convolutionalneural network, the moving averages ma₄ . . . , mb₄ . . . , mc₄ . . . ,md₄ . . . from the time t₄ on at FIG. 10B are processed by convolutionby the filter while making the filter move little by little to therebyalso first calculate the output values from the time t₇ to the time t₉(z₍₁₎₇, z₍₁₎₈, z₍₁₎₉) . . . (z₍₂₀₎₇, z₍₂₀₎₈, and z₍₂₀₎₉). Therefore, inthis case, it becomes possible to estimate the magnet temperature at thetime t₉. Therefore, in this case, the fixed time X2 at step 44 is made 9seconds. If the processing for estimation of the magnet temperature isstarted, after that, the estimated value of the magnet temperature isoutput every 1 second.

In this way, the magnet temperature estimation device according to thepresent invention, as shown in the view of the configuration of theinvention of FIG. 13 , is provide with a parameter acquiring unit 50 foracquiring parameters relating to rotation of the motor 2 concerned,measured every constant time period, a calculating unit 51 forcalculating a moving average of every constant interval of theseparameters, a temperature acquiring unit 52 for inputting the movingaverages calculated by the calculating unit 51 into a training modeltrained so as to output a temperature of the magnets which the rotor 7of the motor 2 is provided with when moving averages of the parametersrelating to rotation of the motor 2 are input and acquiring theestimated value of the magnet temperature output from the trainingmodel, and an output unit 53 for outputting the estimated value of themagnet temperature which the temperature acquiring part 52 acquires.

In this case, in the embodiment of the present invention, theabove-mentioned training model is comprised of the 1D convolutionalneural network. Further, in the embodiment of the present invention, theparameters relating to rotation of the motor 2 include the stator coiltemperature Ts, the motor rotational speed Rm, the oil temperature Ti,and the oil pump rotational speed Rp. Further, in the embodiment of thepresent invention, as the moving averages, moving averages obtained byexponential moving averages (EMA) can be used. In this case, thecalculating unit 51 calculates exponential moving averages as the movingaverages.

Further, it is learned that the temperature of the permanent magnetsattached to the rotor 7 is correlated with the torque of the motor 2,the motor current flowing through the stator coil of the motor 2, andthe inverter frequency related to the rotational speed of the motor 2and that the changes along with time of these torque of the motor 2,motor current, and inverter frequency from the past to the present alsoaffect the temperature of the permanent magnets attached to the rotor 7.Therefore, the parameters relating to rotation of the motor 2 can bemade to include, in addition to the stator coil temperature Ts, themotor rotational speed Rm, the oil temperature Ti, and the oil pumprotational speed Rp, the motor torque, the motor current, and theinverter frequency.

FIG. 14 shows the relationship between the estimation error (estimatedvalue-actual value) of the magnet temperature and the frequencydistribution when making the operating state of the vehicle randomlychange while operating the vehicle. From FIG. 14 , it is understood thatwhen performing the moving average processing for the measured values(after performing moving average), the estimation error of the magnettemperature becomes smaller compared with when not processing the movingaverage processing for the measured values (before performing movingaverage) as shown in FIG. 3 to FIG. 4B.

Now then, in the routine for estimation of the magnet temperature shownin FIG. 12 , as explained above, if the processing for estimation of themagnet temperature is started, after that, the processing forcomputation of the estimated value of the magnet temperature isperformed every 1 second and the estimated value of the magnettemperature is output every 1 second. In this regard, however, when thedrive load of the vehicle is small, the speed of change of the magnettemperature becomes slow and the necessity of acquiring the estimatedvalue of the magnet temperature at short intervals falls. Therefore,when the drive load of the vehicle is small, to reduce the consumedelectric power, it is preferable to lower the frequency of processingfor computation of the estimated value of the magnet temperature. FIG.15 and FIG. 16 show another embodiment designed to lower the frequencyof processing for computation of the estimated value of the magnettemperature when the drive load of the vehicle is small.

In this other embodiment, as shown in FIG. 15 , if the drive load of thevehicle becomes smaller than a set load PK, the computation timeinterval Δt of the estimated value of the magnet temperature is madelarger. In this case, in the example shown in FIG. 15 , if the driveload of the vehicle becomes smaller than the set load PK, thecomputation time interval Δt of the estimated value of the magnettemperature is made larger and if the drive load of the vehicle becomesfurther smaller, the computation time interval Δt of the estimated valueof the magnet temperature is made further larger. Specifically speaking,when the drive load of the vehicle is larger than the set load PK, thecomputation time interval Δt of the estimated value of the magnettemperature is made 1 second, when the drive load of the vehicle becomessmaller than the set load PK, the computation time interval Δt of theestimated value of the magnet temperature is made 5 seconds, and if thedrive load of the vehicle becomes further smaller, the computation timeinterval Δt of the estimated value of the magnet temperature is made 10seconds.

FIG. 16 shows the routine for estimation of the magnet temperature forworking this other embodiment. Note that, this routine is also executedby interruption every 1 second. Further, step 60 to step 64 of theroutine for estimation of the magnet temperature shown in FIG. 16 arethe same as step 40 to step 44 of the routine for estimation of themagnet temperature shown in FIG. 12 .

That is, referring to FIG. 16 , first, at step 60, the temperature Ts ofthe stator coil measured by the temperature sensor 10, the rotationalspeed Rm of the motor 2 measured by the rotational speed sensor 11, thetemperature Ti of the oil measured by the temperature sensor 12, and therotational speed Rp of the oil pump 3 measured by the rotational speedsensor 13 are acquired and stored inside the RAM 23. Next, at step 61,it is judged if the fixed time X1 from when the routine for estimationof the magnet temperature has started to be performed, for example, 4seconds, has elapsed.

When at step 61 it is judged that the fixed time X1 from when theroutine for estimation of the magnet temperature has started to beperformed has not elapsed, the processing cycle is ended. As opposed tothis, when at step 61 it is judged that the fixed time X1 from when theroutine for estimation of the magnet temperature has started to beperformed has elapsed, the routine proceeds to step 62 where the movingaverages are calculated, then the routine proceeds to step 63 where thecalculated moving averages are stored inside the RAM 23. Note that, ifusing as the moving averages moving averages obtained by simple movingaverages (SMA), at step 62, the moving averages shown at the time t₄ ofFIG. 11A are calculated and the moving averages shown at the time t₅ ofFIG. 11A are calculated at the next interruption routine after 1 second.On the other hand, if using as the moving averages moving averagesobtained by exponential moving averages (EMA), at step 62, the movingaverages shown at the time t₄ of FIG. 11B are calculated and the movingaverages shown at the time t₅ of FIG. 11B are calculated at the nextinterruption routine after 1 second.

Next, at step 64, it is judged if the fixed time X2 from when theroutine for estimation of the magnet temperature has started to beperformed, for example, 9 seconds, has elapsed. When at step 64 it isjudged that the fixed time X2 from when the routine for estimation ofthe magnet temperature has started has not elapsed, the processing cycleis ended. As opposed to this, when it is judged that the fixed time X2from when the routine for estimation of the magnet temperature hasstarted to be performed has elapsed, the routine proceeds to step 65where it is judged if the drive load of the vehicle is larger than theset load PK. When it is judged that the drive load of the vehicle islarger than the set load PK, the routine jumps to step 68 whereprocessing for computation of the estimated value of the magnettemperature is performed using the trained 1D convolutional neuralnetwork. That is, the calculated moving averages are input to thetrained 1D convolutional neural network. If the calculated movingaverages are input to the trained 1D convolutional neural network, theestimated value of the magnet temperature is output from the trained 1Dconvolutional neural network (step 69). At this time, in the same way aswhen the routine for estimation of the magnet temperature shown in FIG.12 is performed, if the processing for estimation of the magnettemperature is started, the estimated value of the magnet temperature isoutput every 1 second.

On the other hand, when at step 65 it is judged that the drive load ofthe vehicle is not larger than the set load PK, the routine proceeds tostep 66 where the computation time interval Δt of the estimated value ofthe magnet temperature corresponding to the drive load of the vehicle iscalculated from the relation shown in FIG. 15 . Next, at step 67, it isjudged if the computation time interval Δt of the estimated value of themagnet temperature has elapsed. When at step 67 it is judged that thecomputation time interval Δt of the estimated value of the magnettemperature has not elapsed, the processing cycle is ended. As opposedto this, when at step 67 it is judged that the computation time intervalΔt of the estimated value of the magnet temperature has elapsed, theroutine proceeds to step 68 where processing for computation of theestimated value of the magnet temperature is performed using the trained1D convolutional neural network. Therefore, at this time, the processingfor computation of the estimated value of the magnet temperature isperformed by the computation time interval Δt corresponding to the driveload of the vehicle, for example, every 5 seconds or every 10 seconds,and the estimated value of the magnet temperature is output for example,every 5 seconds or every 10 seconds.

That is, in this other embodiment, the interval of acquisition of theestimated value of the magnet temperature by the temperature acquiringunit 52 (FIG. 13 ) is made to change in accordance with the drive loadof the vehicle, and the interval of acquisition of the estimated valueof the magnet temperature when the drive load of the vehicle is low ismade longer than the interval of acquisition of the estimated value ofthe magnet temperature when the drive load of the vehicle is high.

FIG. 17A and FIG. 17B show control of the drive current of the motor 2performed using the estimated value of the magnet temperature. In thiscontrol of the drive current of the motor 2, as shown in FIG. 17A, thehigher the magnet temperature, the more the maximum value I max of thedrive current of the motor 2 is made to fall. FIG. 17B shows the routinefor control of the drive current of the motor 2 performed inside theelectronic control unit 20 during operation of the vehicle. Note that,this routine is executed by interruption every fixed time period.Referring to FIG. 17B, first, at step 70, the demanded drive load of thevehicle is calculated. Next, at step 71, the drive current I of themotor 2 is calculated based on the demanded drive load of the vehicle.Next, at step 72, the maximum value I max of the drive current of themotor 2 is calculated from the relation shown in FIG. 17A based on theestimated value of the magnet temperature. Next, at step 73, it isjudged if the calculated drive current I of the motor 2 is larger thanthe maximum value I max. When the calculated drive current I of themotor 2 is larger than the maximum value I max, the routine proceeds tostep 74 where the drive current I of the motor 2 is made the maximumvalue I max.

FIG. 18A and FIG. 18B show the control for drive operation of the oilpump 3 performed using the estimated value of the magnet temperature. Inthis case, as the oil pump 3, an oil pump driven by an oil pumpdrive-use motor is used. As shown in FIG. 18A, the higher the magnettemperature, the more the drive current I p of the oil pump drive-usemotor is made to increase. If the drive current I p of the oil pumpdrive-use motor is made to increase, the cooling action of the oil inthe oil cooler 4 will be enhanced, so the oil will fall in temperatureand the magnet temperature will be made to fall. FIG. 18B shows theroutine for controlling the drive of the oil pump 2 performed in theelectronic control unit 20 while the vehicle is being operated. Notethat, this routine is executed by interruption every fixed time period.Referring to FIG. 18B, first, at step 80, the drive current I p of theoil pump drive-use motor is calculated from the relation shown in FIG.18A based on the estimated value of the magnet temperature. Next, atstep 81, the drive of the oil pump 3 is controlled so that the drivecurrent of the oil pump drive-use motor becomes the calculated drivecurrent I p.

The invention claimed is:
 1. A magnet temperature estimation devicecomprising a parameter acquiring unit for acquiring parameters relatingto rotation of a motor concerned, measured every constant time period, acalculating unit for calculating a moving average of every constantinterval of the parameters, a temperature acquiring unit for inputtingthe moving averages calculated by the calculating unit into a trainingmodel trained so as to output a temperature of magnets attached to arotor of the motor when the moving averages of the parameters relatingto rotation of the motor are input to acquire an estimated value of themagnet temperature output from the training model, and an output unitfor outputting the estimated value of the magnet temperature which thetemperature acquiring unit acquires, wherein the parameters include astator coil temperature, motor rotational speed, oil temperature, andoil pump rotational speed.
 2. The magnet temperature estimation deviceaccording to claim 1, wherein the training model is a 1D convolutionalneural network.
 3. The magnet temperature estimation device according toclaim 1, wherein the parameters include, in addition to the stator coiltemperature, motor rotational speed, oil temperature, and oil pumprotational speed, a motor torque, motor current, and inverter frequency.4. The magnet temperature estimation device according to claim 1,wherein the calculating unit calculates an exponential moving average asthe moving average.
 5. A magnet temperature estimation device comprisinga parameter acquiring unit for acquiring parameters relating to rotationof a motor concerned, measured every constant time period, a calculatingunit for calculating a moving average of every constant interval of theparameters, a temperature acquiring unit for inputting the movingaverages calculated by the calculating unit into a training modeltrained so as to output a temperature of magnets attached to a rotor ofthe motor when the moving averages of the parameters relating torotation of the motor are input to acquire an estimated value of themagnet temperature output from the training model, and an output unitfor outputting the estimated value of the magnet temperature which thetemperature acquiring unit acquires, wherein an interval of acquisitionof the estimated value of the magnet temperature by the temperatureacquiring unit is made to change in accordance with a drive load of avehicle, and the interval of acquisition of the estimated value of themagnet temperature when the drive load of the vehicle is low is madelonger than the interval of acquisition of the estimated value of themagnet temperature when the drive load of the vehicle is high.